The last several years have seen a dramatic increase in the number of computer systems and servers. Along with this increase have been an increased number of viruses and/or other malware targeting these systems and servers. Frequently, these viruses and/or malware attempt to infiltrate memory that contains data or instructions to be executed and to alter those data or instructions to execute an authorized code and to compromise security.
Malware and viruses typically target the weakest chain in a technology or directly target the users to convince them to execute the malicious code through e.g., phishing attacks. Although millions of new malware may be found daily, the malware largely belong to finite and small number of families (few thousand where few tens of them are mainly active). Each malware family may use one or many techniques to create new samples which may be totally different than the original binary. Malware can use packing, encryption, polymorphism, obfuscation, etc. technologies to create new samples of the same malware.